# -*- coding: utf-8 -*-
# @Time    : 2023/12/10 16:27
# @Author  : Pan
# @Software: PyCharm
# @Project : AnomalyDetection
# @FileName: RTFM_UCF_CLIP

config = {
    "base": {
        "total_steps": 2000,
        "val_freq": 5,
        "seed": 1203,
        "logdir": "output/RTFM_UCF_CLIP/log"
    },
    "model": {
        "name": "RTFM",
        "n_features": 512,
        "batch_size": 32,
        "num_segments": 32,
        "crop": 1
    },
    "train": {
        "name": "FeatureTrainDataset",
        "normal_dir": "data/UCF/CLIP/train/normal",
        "abnormal_dir": "data/UCF/CLIP/train/abnormal",
        "format": "clip",
        "dataloader": {
            "batch_size": 32,
            "shuffle": True,
            "drop_last": True,
            "num_workers": 2
        }
    },
    "val": {
        "name": "FeatureInferDataset",
        "data_dir": "data/UCF/CLIP/test",
        "target_file": "data/UCF/test.csv",
        "format": "clip",
        "dataloader": {
            "batch_size": 1,
            "shuffle": False,
            "drop_last": True,
            "num_workers": 1
        }
    },
    "optim": {
        "lr": {
            "name": "CosineAnnealingDecay",
            "learning_rate": 0.001,
            "T_max": 5000,
        },
        "name": "Adam"
    },
    "metrics": {
        "name": "ShangHaiTechMetrics",
        "gt_path": "data/UCF/gt-ucf.npy"
    },
    "loss": {
        "name": "RTFM_loss",
        "batch_size": 32
    }
}